package com.toolbox.dal.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.toolbox.domain.AbstractBaseDO;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;

/**
 * <p>
 * 操作日志表
 * </p>
 *
 * @author Mango
 * @since 2023-12-01
 */
@Setter
@Getter
@NoArgsConstructor
@AllArgsConstructor
@ToString(callSuper = true)
@TableName(autoResultMap = true, value = "infra_log_operate")
public class InfraLogOperateDO extends AbstractBaseDO<InfraLogOperateDO> {

    private static final long serialVersionUID = -6531268875983761478L;

    /**
     * 操作名称
     */
    @TableField("operate_name")
    private String operateName;

    /**
     * 操作对象
     */
    @TableField("operate_item")
    private String operateItem;

    /**
     * 请求URL
     */
    @TableField("url")
    private String url;

    /**
     * 请求方式
     */
    @TableField("method")
    private String method;

    /**
     * 请求参数
     */
    @TableField("request_data")
    private String requestData;

    /**
     * 响应参数
     */
    @TableField("response_data")
    private String responseData;

    /**
     * IP地址
     */
    @TableField("ip_address")
    private String ipAddress;

    /**
     * 地区
     */
    @TableField("region")
    private String region;

    /**
     * 浏览器
     */
    @TableField("browser")
    private String browser;

    /**
     * 操作系统
     */
    @TableField("operating_system")
    private String operatingSystem;

    /**
     * 用户代理
     */
    @TableField("agent")
    private String agent;

    /**
     * 执行时长
     */
    @TableField("times")
    private Long times;

    /**
     * 完整方法名
     */
    @TableField("method_name")
    private String methodName;

}
